
var prefix = "/standard/unit";
var regisTypeList=[];
var organTypeList=[];
var situationList=[];
var kindList=[];
var areaVal="";
var accommodationsCategory="";
var unitName ="";
var principal="";

$(function() {
	getRegisType("REGISTER_TYPE");
	getOrganType("ORGAN_TYPE");
	getSituationType("UNIT_MANAGE_SITIUATION");
	getDomainKindType();
	initDownList();
	load();
});

function initDownList() {

	$(".chosen-areaVal").chosen({
		maxHeight: 200,
		width:"150px",
		disable_search_threshold:15
	});
	var html="";
	for (var i = 0; i < kindList.length; i++) {
		html += '<option value="' + kindList[i].domainKindCode + '">' + kindList[i].domainKindName + '</option>'
	}
	$(".chosen-accommodationsCategory").append(html);
	$(".chosen-accommodationsCategory").chosen({
		maxHeight: 200,
		width:"150px",
		disable_search_threshold:15
	});
}

function getDomainKindType() {
		$.ajax({
			type: "GET",
			url: "/standard/reditionary/selectList",
			async:false,//
			success: function(data){
				channelList=data;
				if(data.code == 0)
					kindList =data.data

			}
		});
}

function getRegisType(type) {
	$.ajax({
		type: "GET",
		url: prefix+"/dict",
		data:{"type":type},
		async:false,//
		success: function(data){
			regisTypeList=data;
		}
	});
}

function getOrganType(type) {
	$.ajax({
		type: "GET",
		url: prefix+"/dict",
		data:{"type":type},
		async:false,//
		success: function(data){
			organTypeList=data;
		}
	});
}

function getSituationType(type) {
	$.ajax({
		type: "GET",
		url: prefix+"/dict",
		data:{"type":type},
		async:false,//
		success: function(data){
			situationList=data;
		}
	});
}

var queryParams=function (params) {
    var data= {
        limit: params.limit,
        offset:params.offset
    };
    if(areaVal>0){
        data.areaVal=areaVal;
    }
    if(accommodationsCategory>0){
        data.accommodationsCategory=accommodationsCategory;
    }
    if(unitName){
        data.unitName=unitName;
    }
    if(principal){
        data.principal=principal;
    }
    return data;
};

function queryTable() {
	areaVal=$('.chosen-areaVal').val();
	accommodationsCategory=$('.chosen-accommodationsCategory').val();
	unitName=$('#unitName').val();
	principal=$('#principal').val();
    reLoad();
}

function load() {
	$('#exampleTable')
			.bootstrapTable(
					{
						method : 'get', // 服务器数据的请求方式 get or post
						url : prefix + "/list", // 服务器数据的加载地址
					//	showRefresh : true,
					//	showToggle : true,
					//	showColumns : true,
						iconSize : 'outline',
						toolbar : '#exampleToolbar',
						striped : true, // 设置为true会有隔行变色效果
						dataType : "json", // 服务器返回的数据类型
						pagination : true, // 设置为true会在底部显示分页条
						// queryParamsType : "limit",
						// //设置为limit则会发送符合RESTFull格式的参数
						singleSelect : false, // 设置为true将禁止多选
						// contentType : "application/x-www-form-urlencoded",
						// //发送到服务器的数据编码类型
						pageSize : 10, // 如果设置了分页，每页数据条数
						pageNumber : 1, // 如果设置了分布，首页页码
						//search : true, // 是否显示搜索框
						showColumns : false, // 是否显示内容下拉框（选择显示的列）
						sidePagination : "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
						queryParams : queryParams,
						// //请求服务器数据时，你可以通过重写参数的方式添加一些额外的参数，例如 toolbar 中的参数 如果
						// queryParamsType = 'limit' ,返回参数必须包含
						// limit, offset, search, sort, order 否则, 需要包含:
						// pageSize, pageNumber, searchText, sortName,
						// sortOrder.
						// 返回false将会终止请求
						columns : [
								{
									checkbox : true
								},
							   {
									field : 'id', 
									title : '序号',
								   width: '7%'
								},
								{
									field : 'unitName', 
									title : '单位名称',
									width: '12%',
									formatter : function(value, row, index) {
										if(value && value.length>=9 )
											return "<span title='"+value+"'>"+value.substr(0,9)+"...</span>";
										else
											return value;
									}
								},
								{
									field : 'principal', 
									title : '法定代表人' ,
									width: '7%'
								},
								{
									field : 'unitPhone', 
									title : '单位联系电话' 
								},
								{
									field : 'areaVal', 
									title : '所属区域',
									width: '7%'
								},
								{
									field : 'address', 
									title : '街道地址',
									width: '12%',
									formatter : function(value, row, index) {
										if(value && value.length>=9 )
											return "<span title='"+value+"'>"+value.substr(0,9)+"...</span>";
										else
											return value;
									}
								},
								{
									field : 'accommodationsCategory',
									title : '行业类别' 
								},
								/*{
									field : 'organType', 
									title : '机构类型' ,
									width: '9%',
									formatter : function(value, row, index) {
										var name;
										$.each(organTypeList,function (i,n) {
											if(value==Number(n.value)){
												name= n.name;
												return ;
											}
										});
										return name;
									}
								},*/
								{
									field : 'registerType', 
									title : '登记注册类型',
									width: '9%',
									formatter : function(value, row, index) {
										var name;
										$.each(regisTypeList,function (i,n) {
											if(value==Number(n.value)){
												name= n.name;
												return ;
											}
										});
										return name;
									}
								},
								{
									field : 'establishDate', 
									title : '成立时间',
									width: '8%'
								},
								{
									field : 'manageSituation', 
									title : '经营状况',
									width: '6%',
									formatter : function(value, row, index) {
										var name;
										$.each(situationList,function (i,n) {
											if(value==Number(n.value)){
												name= n.name;
												return ;
											}
										});
										return name;
									}
								},
								/*{
									field : 'manageAreaTier', 
									title : '经营面积几层' 
								},
								{
									field : 'manageAreaRidgepole', 
									title : '经营面积几栋' 
								},
								{
									field : 'manageAreaSquare', 
									title : '经营面积几平方' 
								},
								{
									field : 'createTime', 
									title : '创建时间',
									formatter : function(value, row, index) {
										return FormatDateStr(value,"yyyy-MM-dd");
									}
								},
								{
									field : 'createBy', 
									title : '创建人'
								},*/
								{
									title : '操作',
									field : 'id',
									align : 'center',
									formatter : function(value, row, index) {
										var e = '<a class="btn btn-primary btn-sm '+s_edit_h+'" href="#" mce_href="#" title="编辑" onclick="edit(\''
												+ row.id
												+ '\')"><i class="fa fa-edit"></i>编辑</a> ';
										var d = '<a class="btn btn-warning btn-sm '+s_remove_h+'" href="#" title="删除"  mce_href="#" onclick="remove(\''
												+ row.id
												+ '\')"><i class="fa fa-remove"></i>删除</a> ';
										var f = '<a class="btn btn-success btn-sm" href="#" title="备用"  mce_href="#" onclick="resetPwd(\''
												+ row.id
												+ '\')"><i class="fa fa-key"></i></a> ';
										return e + d ;
									}
								} ]
					});
}
function reLoad() {
	$('#exampleTable').bootstrapTable('refresh');
}
function add() {
	layer.open({
		type : 2,
		title : '增加',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ '800px', '520px' ],
		content : prefix + '/add' // iframe的url
	});
}
function edit(id) {
	layer.open({
		type : 2,
		title : '编辑',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ '800px', '520px' ],
		content : prefix + '/edit/' + id // iframe的url
	});
}

function toimport(){
	layer.open({
		type : 2,
		title : '批量导入',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ '400px', '200px' ],
		content : prefix + '/toImport' // iframe的url
	});
}

function exportList(){
	window.location.href = prefix +"/export";
	/*var data= {};
	areaVal=$('.chosen-areaVal').val();
	accommodationsCategory=$('.chosen-accommodationsCategory').val();
	unitName=$('#unitName').val();
	principal=$('#principal').val();
	if(areaVal>0){
		data.areaVal=areaVal;
	}
	if(accommodationsCategory>0){
		data.accommodationsCategory=accommodationsCategory;
	}
	if(unitName){
		data.unitName=unitName;
	}
	if(principal){
		data.principal=principal;
	}
	$.ajax({
		url : prefix+"/export",
		type : "post",
		data : data,
		success : function(r) {
			if (r.code==0) {
				layer.msg(r.msg);
				reLoad();
			}else{
				layer.msg(r.msg);
			}
		}
	});*/
}

function remove(id) {
	layer.confirm('确定要删除选中的记录？', {
		btn : [ '确定', '取消' ]
	}, function() {
		$.ajax({
			url : prefix+"/remove",
			type : "post",
			data : {
				'id' : id
			},
			success : function(r) {
				if (r.code==0) {
					layer.msg(r.msg);
					reLoad();
				}else{
					layer.msg(r.msg);
				}
			}
		});
	})
}

function resetPwd(id) {
}
function batchRemove() {
	var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行，当没有选择的记录时，返回一个空数组
	if (rows.length == 0) {
		layer.msg("请选择要删除的数据");
		return;
	}
	layer.confirm("确认要删除选中的'" + rows.length + "'条数据吗?", {
		btn : [ '确定', '取消' ]
	// 按钮
	}, function() {
		var ids = new Array();
		// 遍历所有选择的行数据，取每条数据对应的ID
		$.each(rows, function(i, row) {
			ids[i] = row['id'];
		});
		$.ajax({
			type : 'POST',
			data : {
				"ids" : ids
			},
			url : prefix + '/batchRemove',
			success : function(r) {
				if (r.code == 0) {
					layer.msg(r.msg);
					reLoad();
				} else {
					layer.msg(r.msg);
				}
			}
		});
	}, function() {

	});
}